Skip to content

Conversation

jpinsonneau
Copy link
Contributor

@jpinsonneau jpinsonneau commented Aug 19, 2024

Description

Currently, Pod to Service traffic is ignored in metrics because of reporter deduplication mecanism.

This PR suggest an approach taking Pod -> Service traffic

It will require SrcOwnerType & DstOwnerType as labels

Dependencies

netobserv/network-observability-operator#765

Checklist

If you are not familiar with our processes or don't know what to answer in the list below, let us know in a comment: the maintainers will take care of that.

  • Is this PR backed with a JIRA ticket? If so, make sure it is written as a title prefix (in general, PRs affecting the NetObserv/Network Observability product should be backed with a JIRA ticket - especially if they bring user facing changes).
  • Does this PR require product documentation?
    • If so, make sure the JIRA epic is labelled with "documentation" and provides a description relevant for doc writers, such as use cases or scenarios. Any required step to activate or configure the feature should be documented there, such as new CRD knobs.
  • Does this PR require a product release notes entry?
    • If so, fill in "Release Note Text" in the JIRA.
  • Is there anything else the QE team should know before testing? E.g: configuration changes, environment setup, etc.
    • If so, make sure it is described in the JIRA ticket.
  • QE requirements (check 1 from the list):
    • Standard QE validation, with pre-merge tests unless stated otherwise.
    • Regression tests only (e.g. refactoring with no user-facing change).
    • No QE (e.g. trivial change with high reviewer's confidence, or per agreement with the QE team).

Copy link

openshift-ci bot commented Aug 19, 2024

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

Copy link

codecov bot commented Aug 19, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 56.29%. Comparing base (48d9fbf) to head (609a606).
Report is 2 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #580   +/-   ##
=======================================
  Coverage   56.29%   56.29%           
=======================================
  Files         190      190           
  Lines        9289     9289           
  Branches     1197     1197           
=======================================
  Hits         5229     5229           
  Misses       3691     3691           
  Partials      369      369           
Flag Coverage Δ
uitests 57.81% <ø> (ø)
unittests 52.06% <100.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
pkg/handler/topology.go 55.22% <100.00%> (ø)

@jotak jotak added the ok-to-test To set manually when a PR is safe to test. Triggers image build on PR. label Sep 9, 2024
Copy link

github-actions bot commented Sep 9, 2024

New image:
quay.io/netobserv/network-observability-console-plugin:833aedc

It will expire after two weeks.

To deploy this build, run from the operator repo, assuming the operator is running:

USER=netobserv VERSION=833aedc make set-plugin-image

@jotak jotak changed the title NETOBSERV-1788 manage services case NETOBSERV-1788: manage services case Sep 9, 2024
@openshift-ci-robot
Copy link
Collaborator

openshift-ci-robot commented Sep 9, 2024

@jpinsonneau: This pull request references NETOBSERV-1788 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the bug to target the "4.18.0" version, but no target version was set.

In response to this:

Description

Currently, Pod to Service traffic is ignored in metrics because of reporter deduplication mecanism.

This PR suggest an approach taking Pod -> Service traffic

It will require SrcOwnerType & DstOwnerType as labels

Dependencies

n/a

Checklist

If you are not familiar with our processes or don't know what to answer in the list below, let us know in a comment: the maintainers will take care of that.

  • Is this PR backed with a JIRA ticket? If so, make sure it is written as a title prefix (in general, PRs affecting the NetObserv/Network Observability product should be backed with a JIRA ticket - especially if they bring user facing changes).
  • Does this PR require product documentation?
  • If so, make sure the JIRA epic is labelled with "documentation" and provides a description relevant for doc writers, such as use cases or scenarios. Any required step to activate or configure the feature should be documented there, such as new CRD knobs.
  • Does this PR require a product release notes entry?
  • If so, fill in "Release Note Text" in the JIRA.
  • Is there anything else the QE team should know before testing? E.g: configuration changes, environment setup, etc.
  • If so, make sure it is described in the JIRA ticket.
  • QE requirements (check 1 from the list):
  • Standard QE validation, with pre-merge tests unless stated otherwise.
  • Regression tests only (e.g. refactoring with no user-facing change).
  • No QE (e.g. trivial change with high reviewer's confidence, or per agreement with the QE team).

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

Copy link
Member

@jotak jotak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @jpinsonneau , tested and LGTM
This approach looks more correct

@openshift-ci openshift-ci bot added the lgtm label Sep 9, 2024
@jotak
Copy link
Member

jotak commented Sep 9, 2024

any reason to have it as a draft?

@jpinsonneau
Copy link
Contributor Author

any reason to have it as a draft?

This was just waiting to validate the approach. We need to add SrcOwnerType DstOwnerType as labels in the operator repo and rebase this PR

@openshift-ci openshift-ci bot removed the lgtm label Sep 9, 2024
@github-actions github-actions bot removed the ok-to-test To set manually when a PR is safe to test. Triggers image build on PR. label Sep 9, 2024
@openshift-ci-robot
Copy link
Collaborator

openshift-ci-robot commented Sep 9, 2024

@jpinsonneau: This pull request references NETOBSERV-1788 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the bug to target the "4.18.0" version, but no target version was set.

In response to this:

Description

Currently, Pod to Service traffic is ignored in metrics because of reporter deduplication mecanism.

This PR suggest an approach taking Pod -> Service traffic

It will require SrcOwnerType & DstOwnerType as labels

Dependencies

n/a

Checklist

If you are not familiar with our processes or don't know what to answer in the list below, let us know in a comment: the maintainers will take care of that.

  • Is this PR backed with a JIRA ticket? If so, make sure it is written as a title prefix (in general, PRs affecting the NetObserv/Network Observability product should be backed with a JIRA ticket - especially if they bring user facing changes).
  • Does this PR require product documentation?
  • If so, make sure the JIRA epic is labelled with "documentation" and provides a description relevant for doc writers, such as use cases or scenarios. Any required step to activate or configure the feature should be documented there, such as new CRD knobs.
  • Does this PR require a product release notes entry?
  • If so, fill in "Release Note Text" in the JIRA.
  • Is there anything else the QE team should know before testing? E.g: configuration changes, environment setup, etc.
  • If so, make sure it is described in the JIRA ticket.
  • QE requirements (check 1 from the list):
  • Standard QE validation, with pre-merge tests unless stated otherwise.
  • Regression tests only (e.g. refactoring with no user-facing change).
  • No QE (e.g. trivial change with high reviewer's confidence, or per agreement with the QE team).

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@jpinsonneau jpinsonneau marked this pull request as ready for review September 9, 2024 14:34
@jpinsonneau
Copy link
Contributor Author

@jotak rebased and created operator PR: #580

@openshift-ci-robot
Copy link
Collaborator

openshift-ci-robot commented Sep 9, 2024

@jpinsonneau: This pull request references NETOBSERV-1788 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the bug to target the "4.18.0" version, but no target version was set.

In response to this:

Description

Currently, Pod to Service traffic is ignored in metrics because of reporter deduplication mecanism.

This PR suggest an approach taking Pod -> Service traffic

It will require SrcOwnerType & DstOwnerType as labels

Dependencies

#580

Checklist

If you are not familiar with our processes or don't know what to answer in the list below, let us know in a comment: the maintainers will take care of that.

  • Is this PR backed with a JIRA ticket? If so, make sure it is written as a title prefix (in general, PRs affecting the NetObserv/Network Observability product should be backed with a JIRA ticket - especially if they bring user facing changes).
  • Does this PR require product documentation?
  • If so, make sure the JIRA epic is labelled with "documentation" and provides a description relevant for doc writers, such as use cases or scenarios. Any required step to activate or configure the feature should be documented there, such as new CRD knobs.
  • Does this PR require a product release notes entry?
  • If so, fill in "Release Note Text" in the JIRA.
  • Is there anything else the QE team should know before testing? E.g: configuration changes, environment setup, etc.
  • If so, make sure it is described in the JIRA ticket.
  • QE requirements (check 1 from the list):
  • Standard QE validation, with pre-merge tests unless stated otherwise.
  • Regression tests only (e.g. refactoring with no user-facing change).
  • No QE (e.g. trivial change with high reviewer's confidence, or per agreement with the QE team).

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@Amoghrd
Copy link
Member

Amoghrd commented Sep 9, 2024

The operator PR linked is incorrect. Here's the correct one: netobserv/network-observability-operator#765

@openshift-ci-robot
Copy link
Collaborator

openshift-ci-robot commented Sep 9, 2024

@jpinsonneau: This pull request references NETOBSERV-1788 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the bug to target the "4.18.0" version, but no target version was set.

In response to this:

Description

Currently, Pod to Service traffic is ignored in metrics because of reporter deduplication mecanism.

This PR suggest an approach taking Pod -> Service traffic

It will require SrcOwnerType & DstOwnerType as labels

Dependencies

netobserv/network-observability-operator#765

Checklist

If you are not familiar with our processes or don't know what to answer in the list below, let us know in a comment: the maintainers will take care of that.

  • Is this PR backed with a JIRA ticket? If so, make sure it is written as a title prefix (in general, PRs affecting the NetObserv/Network Observability product should be backed with a JIRA ticket - especially if they bring user facing changes).
  • Does this PR require product documentation?
  • If so, make sure the JIRA epic is labelled with "documentation" and provides a description relevant for doc writers, such as use cases or scenarios. Any required step to activate or configure the feature should be documented there, such as new CRD knobs.
  • Does this PR require a product release notes entry?
  • If so, fill in "Release Note Text" in the JIRA.
  • Is there anything else the QE team should know before testing? E.g: configuration changes, environment setup, etc.
  • If so, make sure it is described in the JIRA ticket.
  • QE requirements (check 1 from the list):
  • Standard QE validation, with pre-merge tests unless stated otherwise.
  • Regression tests only (e.g. refactoring with no user-facing change).
  • No QE (e.g. trivial change with high reviewer's confidence, or per agreement with the QE team).

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@jpinsonneau
Copy link
Contributor Author

The operator PR linked is incorrect. Here's the correct one: netobserv/network-observability-operator#765

Sorry about that ! bad copy / paste

q2 := filters.SingleQuery{
filters.NewMatch(fields.FlowDirection, `"`+string(constants.Egress)+`"`),
filters.NewMatch(fields.DstOwnerName, `""`),
filters.NewMatch(fields.DstOwnerType, `"","Service"`),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

in fact we could use:

Suggested change
filters.NewMatch(fields.DstOwnerType, `"","Service"`),
filters.NewMatch(fields.DstType, `"","Service"`),

.. it works the same, but with the advantage to not have to add another index (it's already indexed)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here we go
609a606

@jotak jotak added the ok-to-test To set manually when a PR is safe to test. Triggers image build on PR. label Sep 10, 2024
Copy link

New image:
quay.io/netobserv/network-observability-console-plugin:cb28dd5

It will expire after two weeks.

To deploy this build, run from the operator repo, assuming the operator is running:

USER=netobserv VERSION=cb28dd5 make set-plugin-image

@jotak
Copy link
Member

jotak commented Sep 10, 2024

/lgtm
With a remark however: with prometheus datasource, it still isn't showing services but that's for a different reason. By default we enable the workload_ingress_bytes_total metric but not its Egress counterpart (workload_egress_bytes_total). Traffic to services is only captured in Egress metrics. Just turn it on in the configuration, and you will see traffic to service via prometheus as well.

=> Ticket created: https://issues.redhat.com/browse/NETOBSERV-1848

@openshift-ci openshift-ci bot added the lgtm label Sep 10, 2024
@Amoghrd
Copy link
Member

Amoghrd commented Sep 10, 2024

/ok-to-test

@Amoghrd
Copy link
Member

Amoghrd commented Sep 10, 2024

/label qe-approved

@openshift-ci openshift-ci bot added the qe-approved QE has approved this pull request label Sep 10, 2024
@openshift-ci-robot
Copy link
Collaborator

openshift-ci-robot commented Sep 10, 2024

@jpinsonneau: This pull request references NETOBSERV-1788 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the bug to target the "4.18.0" version, but no target version was set.

In response to this:

Description

Currently, Pod to Service traffic is ignored in metrics because of reporter deduplication mecanism.

This PR suggest an approach taking Pod -> Service traffic

It will require SrcOwnerType & DstOwnerType as labels

Dependencies

netobserv/network-observability-operator#765

Checklist

If you are not familiar with our processes or don't know what to answer in the list below, let us know in a comment: the maintainers will take care of that.

  • Is this PR backed with a JIRA ticket? If so, make sure it is written as a title prefix (in general, PRs affecting the NetObserv/Network Observability product should be backed with a JIRA ticket - especially if they bring user facing changes).
  • Does this PR require product documentation?
  • If so, make sure the JIRA epic is labelled with "documentation" and provides a description relevant for doc writers, such as use cases or scenarios. Any required step to activate or configure the feature should be documented there, such as new CRD knobs.
  • Does this PR require a product release notes entry?
  • If so, fill in "Release Note Text" in the JIRA.
  • Is there anything else the QE team should know before testing? E.g: configuration changes, environment setup, etc.
  • If so, make sure it is described in the JIRA ticket.
  • QE requirements (check 1 from the list):
  • Standard QE validation, with pre-merge tests unless stated otherwise.
  • Regression tests only (e.g. refactoring with no user-facing change).
  • No QE (e.g. trivial change with high reviewer's confidence, or per agreement with the QE team).

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

Copy link

openshift-ci bot commented Sep 10, 2024

[APPROVALNOTIFIER] This PR is APPROVED

Approval requirements bypassed by manually added approval.

This pull-request has been approved by:

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-merge-bot openshift-merge-bot bot merged commit 583289a into netobserv:main Sep 10, 2024
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved jira/valid-reference lgtm ok-to-test To set manually when a PR is safe to test. Triggers image build on PR. qe-approved QE has approved this pull request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants